\documentclass[tikz,border=2pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usetikzlibrary{scopes}
\usepackage{tikz-feynman} % texdoc tikz-feynman 
\begin{document}

\tikzset{
pics/figChpt/.style n args={3}{
        code={
                \begin{feynman}
                    %% fig j
                    \vertex (x1) at (0,0);
                    \vertex[right =1cm  of x1] (x2);
                    \vertex[right =2.48cm  of x1] (x3);
                    \vertex[right =2.52cm  of x1] (x4);
                    \vertex[right =5cm  of x1] (x5);
                    \vertex[above =2cm  of x3,crossed dot,anchor=center] (x6);
                    % 横线粒子
                    \node[below  right = 2pt ] at (x1) {#2};
                    \node[below  left= 2pt ] at (x5) {#2};
                    % 圈图介子
                    \node[above = 1.35cm ] at (x3) {#3};
                    % 图形的名称
                    \node[above right =1.2 and 4.2 of x1] {#1};
                    % 对各个顶点连线
                    \diagram*{
                    { [edge= fermion]
                            (x1) --  (x3)--(x5),
                        },
                    %介子连线
                    { [edge= charged scalar]
                    (x3) --[controls=+(148:4.8) and +(32:4.8)](x4),
                    }
                    };
                \end{feynman}
            }},
%% quench 图
pics/figQrkQch/.style n args={4}{
code={
\coordinate (a1) at (0,0){}; %左端点
\coordinate[right =5  of a1] (a2); %右端点
\coordinate[right =2.2  of a1] (a3); % 泡泡起点
\coordinate[right =2.8  of a1] (a4); % 泡泡终点
\coordinate[above =-0.5  of a1] (a1d);
\coordinate[above =-1.0  of a1] (a1dd);
\coordinate[above =-0.5  of a2] (a2d);
\coordinate[above =-1.0  of a2] (a2dd);
\coordinate[above =-0.5  of a3] (a3d);
\coordinate[above =-0.5  of a4] (a4d);
% 图形的名称
\node[above right =0.7 and 4.2 of a1] {#1};
% 标注夸克名称
\node[above right =0.5pt and 1pt of a1] {#2};
\node[above right =0.5pt and 1pt of a1d] {#3};
\node[above right =0.5pt and 1pt of a1dd] {#4};
% 连接顶点, 传播子
{[every edge/.style=/tikzfeynman/fermion]
\path (a1) edge (a3);
\path (a4) edge (a2);
\path (a1d) edge (a3d);
\path (a4d) edge (a2d);
\path (a1dd) edge (a2dd);
% 小圈
\path (a3) edge[controls=+(27:3.2) and +(153:3.2)] (a4);
%大圈
\path (a3d) edge[controls=+(145:5) and +(35:5)] (a4d);
}}},
%% sea 图 A
pics/figQrkSeaA/.style n args={5}{
code={
\coordinate (b1) at (0,0); %入射位置1
\coordinate[right =2.3  of b1] (b2); % 大圈起点
\coordinate[above =-0.5  of b2] (b2d);
\coordinate[above =-0.5  of b2d] (b2dd);
\coordinate[right =2.7  of b1] (b3); % 大圈终点
\coordinate[right =5  of b1] (b4); %最右侧, 出射位置1
\coordinate[above =-0.5 of b1] (b5); % 入射位置2
\coordinate[right =5  of b5] (b6);
\coordinate[above =-1 of b1] (b7); % 入射位置3
\coordinate[right =5  of b7] (b8);
\coordinate[above right =1.0 and 1.8  of b1] (b9);
\coordinate[above right =1.0 and 3.2  of b1] (b10);
% 图形的名称
\node[above right =0.7 and 4.2 of b1] {#1};
% 标注夸克名称, 初态
\node[above right =0.5pt and 1pt of b1] {#2};
\node[above right =0.5pt and 1pt of b5] {#3};
\node[above right =0.5pt and 1pt of b7] {#4};
%% 中间的夸克名称
\node[above right =0.6 and 2.28 of b1] {#5};
% 连接顶点, 传播子
{[every edge/.style=/tikzfeynman/fermion]
\begin{feynman}
    %普通连线
    \path (b3) edge (b4);
    \path (b1) edge (b2);
    % \path (b5) edge (b2d);
    % \path (b7) edge (b2dd);
    %费米子箭头连线
    \path (b5) edge (b6);
    \path (b7) edge (b8);
    \path (b2) edge[controls=+(150:5) and +(30:5)] (b3);
    % 小圈
    \path (b9) edge [half right,looseness=1.2](b10);
    \path (b10) edge [half right,looseness=1.2](b9);
\end{feynman}
}}},
%% sea 图 B
pics/figQrkSeaB/.style n args={5}{
code={
\coordinate (b1) at (0,0); %入射位置1
\coordinate[right =2.3  of b1] (b2); % 大圈起点
\coordinate[above =-0.5  of b2] (b2d);
\coordinate[above =-0.5  of b2d] (b2dd);
\coordinate[right =2.7  of b1] (b3); % 大圈终点
\coordinate[right =5  of b1] (b4); %最右侧, 出射位置1
\coordinate[above =-0.5 of b1] (b5); % 入射位置2
\coordinate[right =5  of b5] (b6);
\coordinate[above =-1 of b1] (b7); % 入射位置3
\coordinate[right =5  of b7] (b8);
\coordinate[above right =1.0 and 1.8  of b1] (b9);
\coordinate[above right =1.0 and 3.2  of b1] (b10);
% 图形的名称
\node[above right =0.7 and 4.2 of b1] {#1};
% 标注夸克名称, 初态
\node[above right =0.5pt and 1pt of b1] {#2};
\node[above right =0.5pt and 1pt of b5] {#3};
\node[above right =0.5pt and 1pt of b7] {#4};
%% 夸克名称, 中间态
\node[above right =0.6  and 2.28 of b1] {#5};
% 连接顶点, 传播子
{[every edge/.style=/tikzfeynman/fermion]
\begin{feynman}
    %普通连线
    \path (b3) edge (b4);
    \path (b1) edge (b2);
    % \path (b5) edge (b2d);
    % \path (b7) edge (b2dd);
    %费米子箭头连线
    \path (b5) edge (b6);
    \path (b7) edge (b8);
    \path (b2) edge[controls=+(25:6) and +(155:6)] (b3);
    % 小圈
    \path (b9) edge [half left,looseness=1.2](b10);
    \path (b10) edge [half left,looseness=1.2](b9);
\end{feynman}
}}}}

\begin{tikzpicture}
    \path (0,3) pic { figChpt = {$(1)$}{$p$}{$\pi^+$}} ;
    \path (0,0) pic { figQrkQch = {$(a)$}{$u$}{$d$}{$u$} } ;
    \path (6,0) pic { figQrkQch = {$(b)$}{$d$}{$u$}{$u$} } ;
    \path (0,-4) pic { figQrkSeaA = {$(c)$}{$u$}{$d$}{$u$}{$d$} };
    \path (6,-4) pic { figQrkSeaB = {$(d)$}{$u$}{$d$}{$u$}{$d$} };
    \path (0,-8) pic { figQrkSeaA = {$(e)$}{$d$}{$u$}{$u$}{$u$} };
    \path (6,-8) pic { figQrkSeaB = {$(f)$}{$d$}{$u$}{$u$}{$u$} };
    %
    \path (12,3) pic { figChpt = {$(2)$}{$p$}{$K^+$}} ;
    \path (12,0) pic { figQrkSeaA = {$(h)$}{$u$}{$d$}{$u$}{$s$} };
    \path (18,0) pic { figQrkSeaB = {$(i)$}{$u$}{$d$}{$u$}{$s$} };
    %
    \path (12,-5) pic { figChpt = {$(3)$}{$p$}{$K^0$}} ;
    \path (12,-8) pic { figQrkSeaA = {$(j)$}{$d$}{$u$}{$u$}{$s$} };
    \path (18,-8) pic { figQrkSeaB = {$(k)$}{$d$}{$u$}{$u$}{$s$} };
\end{tikzpicture}

\end{document}
